package com.eureka.eurekaserviceinvoker.client;

import com.eureka.eurekaserviceinvoker.contract.MyUrl;
import com.eureka.eurekaserviceinvoker.entity.Person;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PutMapping;

/**
 * 具备负载均衡能力
 * 通过服务提供者的应用名称(eureka-service-provider项目的yml设置spring.application.name)调用接口
 * FeignClient注解底层是 Client被封装到LoadBalanceClient类，这个类结合类Ribbon做到了负载均衡
 * Created by earl on 2018/4/28.
 */
@FeignClient("eureka-service-provider")
public interface TestClient {



    //使用自定义注解（具体看contract package的实现和配置）
    @MyUrl(method = "GET",url="/provider/hello")
    String hello2();

}
